// async function fn1() { // async 返回的是一个 Promise对象
//     return Promise.resolve(200)
// }

// const res = fn1()
// console.log(res)
// res.then((data) => { // res 为Promis 对象 可以使用 then 进行调用
//     console.log('data' , data)
// })

// !(async function() {
//     const p1 = Promise.resolve(300)
//     const p2 = await p1
//     console.log(p2)
// })()

// !(async function() {
//     const p2 = await 400 // 如果不是异步 等于 Promise.resolve(400)
//     console.log(p2)
// })()



// !(async function() {
//     const res1 = await fn1()
//     console.log(res1)
// })()

// !(async function() {
//     const p1 =  Promise.reject('err')
//     try {
//         const p2 = await p1
//     } catch(ex) {
//         console.log(ex) // try..catch 相当于Promise 的 catch
//     }
// })()

function muit(num) {
    return new Promise((resolve ) => {
        setTimeout(() =>{
            resolve(num * num)
        },1000)
    })
}
let arr = [1,2,3]
!(async function() {
    for(let k of arr) {
        const res = await muit(k)
        console.log(res)
    }
})()